wayland: make sure to clear up the number of keys
authorOlivier Fourdan <ofourdan@redhat.com>
Tue, 28 Feb 2017 17:17:39 +0000 (18:17 +0100)
committerOlivier Fourdan <ofourdan@redhat.com>
Wed, 1 Mar 2017 15:10:44 +0000 (16:10 +0100)
Make sure to clear up the number of keys being pressed on enter/leave so
that we don't end up with leftovers if a new window is mapped by a
keyboard shortcut.

https://bugzilla.gnome.org/show_bug.cgi?id=779374

gdk/wayland/gdkdevice-wayland.c

index 1f3cdfb623521b341193f5f3a90cef601a708180..5a91301f0bd27111e9f867cc953798203a85671b 100644 (file)
@@ -1869,6 +1869,7 @@ keyboard_handle_enter (void               *data,
 
   seat->keyboard_focus = wl_surface_get_user_data (surface);
   g_object_ref (seat->keyboard_focus);
+  seat->nkeys = 0;
 
   event = gdk_event_new (GDK_FOCUS_CHANGE);
   event->focus_change.window = g_object_ref (seat->keyboard_focus);
@@ -1925,6 +1926,7 @@ keyboard_handle_leave (void               *data,
 
   g_object_unref (seat->keyboard_focus);
   seat->keyboard_focus = NULL;
+  seat->nkeys = 0;
 
   GDK_NOTE (EVENTS,
             g_message ("focus out, seat %p surface %p",